Detecting implantable medical device orientation change

ABSTRACT

Embodiments of the present disclosure relate to detecting implantable medical device orientation changes. In an exemplary embodiment, a medical device having a processor, comprises an acceleration sensor and memory. The acceleration sensor is configured to generate acceleration data that comprises a plurality of acceleration measurements. The memory comprises instructions that when executed by the processor, cause the processor to: obtain the acceleration data from the acceleration sensor; and determine, based on the acceleration data, that the medical device has flipped.

CROSS REFERENCE TO RELATED APPLICATION

This application claims priority to Provisional Application No.62/858,696, filed Jun. 7, 2019, which is herein incorporated byreference in its entirety.

TECHNICAL FIELD

Embodiments of the present disclosure relate to medical devices andsystems for sensing physiological parameters. More specifically,embodiments of the disclosure relate to determining whether anorientation of a medical device has changed.

BACKGROUND

Implantable medical devices (IMDs) may be configured to sensephysiological parameters and/or provide therapy. The overall usablevolume enclosed within a housing of an IMD may be adjusted based onconsiderations of patient comfort and performance. Examples of IMDsinclude implantable cardiac monitors (ICMs), implantable loop recorders(ILRs), and the like, which can be configured to be subcutaneouslyimplanted in a patient for monitoring one or more physiologicalparameters such as, e.g., physiological parameters associated with theheart and/or the lungs.

To facilitate a more comfortable and efficient experience, these devicesmay be designed to keep the overall volume of the device as small aspossible. Each year, the devices become smaller and include sensors withmore and more capabilities. In many cases, the orientation of the sensorrelative to the body is an important input for many of the sensors andalgorithms. Some of these devices have a relatively high probability ofrotation in the body due to their geometry.

SUMMARY

Embodiments for detecting implantable medical device orientation changesinclude, but are not limited to, the following exemplary embodiments.

In an Example 1, a medical device having a processor, comprising: anacceleration sensor configured to generate acceleration data, theacceleration data comprising a plurality of acceleration measurements;and a memory having embodied thereon computer-executable instructionsthat are configured to, when executed by the processor, cause theprocessor to: obtain the acceleration data from the acceleration sensor;and determine, based on the acceleration data, that the medical devicehas flipped.

In an Example 2, the medical device of Example 1, wherein theinstructions are configured to cause the processor to determine that themedical device has flipped by causing the processor to: generate a slopeof the acceleration data, the slope comprising axis values for at leasttwo axes against time; apply a moving mean filter across the data togenerate a first smoothed set of axis data corresponding to a first axisand a second smoothed set of axis data corresponding to a second axis;identify an intersection between the first smoothed set of axis data andthe second smoothed set of axis data; and determine, based on theidentified intersection, that the medical device has flipped.

In an Example 3, the medical device of Example 1, wherein theinstructions are configured to cause the processor to determine that themedical device has flipped by causing the processor to: generate a slopeof the acceleration data, the slope comprising axis values for at leastone axis against time; apply a moving mean filter across the data togenerate a first smoothed set of axis data corresponding to a first axisof the at least one axis; identify a first sign change associated withthe first smoothed set of axis data; and determine, based on theidentified first sign change, that the medical device has flipped.

In an Example 4, the medical device of Example 3, wherein theinstructions are further configured to cause the processor to apply themoving mean filter across the data to generate a second smoothed set ofaxis data corresponding to a second axis; identify a second sign changeassociated with the second smoothed set of axis data; and determine,based on the identified first and second sign changes, that the medicaldevice has flipped.

In an Example 5, the medical device of any of Examples 1-4, wherein theinstructions are further configured to cause the processor to apply, inresponse to determining that the medical device has flipped, acorrection to an output of a monitoring process.

In an Example 6, the medical device of Example 5, wherein the monitoringprocess comprises at least one of a posture algorithm, a heart soundsalgorithm, and an ICM impedance sensing process.

In an Example 7, the medical device of either of Examples 5 or 6,wherein the instructions are configured to cause the processor to applythe correction to the output of the monitoring process by recalibratingthe monitoring process to account for a flipped orientation of themedical device.

In an Example 8, the medical device of any of Examples 1-7, wherein theinstructions are further configured to cause the processor to generate,in response to determining that the medical device has flipped, anotification.

In an Example 9, the medical device of Example 8, wherein thenotification comprises one or more recommendations for responding to theflipped medical device.

In an Example 10, the medical device of any of Examples 1-9, wherein theinstructions are configured to cause the processor to determine that themedical device has flipped by causing the processor to: apply atrigonometric function to the acceleration data and identify a flipbased on a resultant of the trigonometric function being applied to theacceleration data.

In an Example 11, a processor-implemented method, performed by aprocessor of a medical device, the method comprising: obtainingacceleration data from an acceleration sensor; and determining, based onthe acceleration data, that the medical device has flipped.

In an Example 12, the method of Example 11, wherein determining that themedical device has flipped comprises: generating a slope of theacceleration data, the slope comprising axis values for at least twoaxes against time; applying a moving mean filter across the data togenerate a first smoothed set of axis data corresponding to a first axisand a second smoothed set of axis data corresponding to a second axis;identifying an intersection between the first smoothed set of axis dataand the second smoothed set of axis data; and determining, based on theidentified intersection, that the medical device has flipped.

In an Example 13, the method of Example 11, wherein determining that themedical device has flipped comprises: generating a slope of theacceleration data, the slope comprising axis values for at least oneaxis against time; applying a moving mean filter across the data togenerate a first smoothed set of axis data corresponding to a first axisof the at least one axis; identifying a first sign change associatedwith the first smoothed set of axis data; and determining, based on theidentified first change, that the medical device has flipped.

In an Example 14, the method of Example 13, further comprising: applyingthe moving mean filter across the data to generate a second smoothed setof axis data corresponding to a second axis; identifying a second signchange associated with the second smoothed set of axis data; anddetermining, based on the identified first and second sign changes, thatthe medical device has flipped.

In an Example 15, the method of any of Examples 11-14, furthercomprising applying, in response to determining that the medical devicehas flipped, a correction to an output of a monitoring process.

In an Example 16, a medical device having a processor, comprising: anacceleration sensor configured to generate acceleration data, theacceleration data comprising a plurality of acceleration measurements;and a memory having embodied thereon computer-executable instructionsthat are configured to, when executed by the processor, cause theprocessor to: obtain the acceleration data from the acceleration sensor;and determine, based on the acceleration data, that the medical devicehas flipped.

In an Example 17, the medical device of Example 16, wherein theinstructions are configured to cause the processor to determine that themedical device has flipped by causing the processor to: generate a slopeof the acceleration data, the slope comprising axis values for at leasttwo axes against time; apply a moving mean filter across the data togenerate a first smoothed set of axis data corresponding to a first axisand a second smoothed set of axis data corresponding to a second axis;identify an intersection between the first smoothed set of axis data andthe second smoothed set of axis data; and determine, based on theidentified intersection, that the medical device has flipped.

In an Example 18, the medical device of Example 16, wherein theinstructions are configured to cause the processor to determine that themedical device has flipped by causing the processor to: generate a slopeof the acceleration data, the slope comprising axis values for at leastone axis against time; apply a moving mean filter across the data togenerate a first smoothed set of axis data corresponding to a first axisof the at least one axis; identify a first sign change associated withthe first smoothed set of axis data; and determine, based on theidentified first sign change, that the medical device has flipped.

In an Example 19, the medical device of Example 18, wherein theinstructions are further configured to cause the processor to apply amoving mean filter across the data to generate a second smoothed set ofaxis data corresponding to a second axis; identify a second sign changeassociated with the second smoothed set of axis data; and determine,based on the identified first and second sign changes, that the medicaldevice has flipped.

In an Example 20, the medical device of Example 16, wherein theinstructions are further configured to cause the processor to apply, inresponse to determining that the medical device has flipped, acorrection to an output of a monitoring process.

In an Example 21, the medical device of Example 20, wherein themonitoring process comprises at least one of a posture algorithm, aheart sounds algorithm, and an ICM impedance sensing process.

In an Example 22, the medical device of Example 20, wherein theinstructions are configured to cause the processor to apply thecorrection to the output of the monitoring process by recalibrating themonitoring process to account for a flipped orientation of the medicaldevice.

In an Example 23, the medical device of any of Examples 20, wherein theinstructions are further configured to cause the processor to generate,in response to determining that the medical device has flipped, anotification.

In an Example 24, the medical device of Example 23, wherein thenotification comprises one or more recommendations for responding to theflipped medical device.

In an Example 25, the medical device of Example 16, wherein theinstructions are configured to cause the processor to determine that themedical device has flipped by causing the processor to: apply atrigonometric function to the acceleration data and identify a flipbased on a resultant of the trigonometric function being applied to theacceleration data.

In an Example 26, a processor-implemented method, performed by aprocessor of a medical device, the method comprising: obtainingacceleration data from an acceleration sensor; and determining, based onthe acceleration data, that the medical device has flipped.

In an Example 27, the method of Example 26, wherein determining that themedical device has flipped comprises: generating a slope of theacceleration data, the slope comprising axis values for at least twoaxes against time; applying a moving mean filter across the data togenerate a first smoothed set of axis data corresponding to a first axisand a second smoothed set of axis data corresponding to a second axis;identifying an intersection between the first smoothed set of axis dataand the second smoothed set of axis data; and determining, based on theidentified intersection, that the medical device has flipped.

In an Example 28, the method of Example 26, wherein determining that themedical device has flipped comprises: generating a slope of theacceleration data, the slope comprising axis values for at least oneaxis against time; applying a moving mean filter across the data togenerate a first smoothed set of axis data corresponding to a first axisof the at least one axis; identifying a first sign change associatedwith the first smoothed set of axis data; and determining, based on theidentified first change, that the medical device has flipped.

In an Example 29, the method of Example 28, further comprising: applyingthe moving mean filter across the data to generate a second smoothed setof axis data corresponding to a second axis; identifying a second signchange associated with the second smoothed set of axis data; anddetermining, based on the identified first and second sign changes, thatthe medical device has flipped.

In an Example 30, the method of Example 26, further comprising applying,in response to determining that the medical device has flipped, acorrection to an output of a monitoring process.

In an Example 31, the method of Example 30, wherein the monitoringprocess comprises at least one of a posture algorithm, a heart soundsalgorithm, and an ICM impedance sensing process.

In an Example 32, one or more computer-readable media havingcomputer-executable instructions embodied thereon, the instructionsconfigured to be executed by a processor of a medical device, whereinthe instructions are configured to cause the processor to: obtainacceleration data from an acceleration sensor; and determine, based onthe acceleration data, that the medical device has flipped.

In an Example 33, the media of Example 32, wherein the instructions areconfigured to cause the processor to determine that the medical devicehas flipped by causing the processor to: generate a slope of theacceleration data, the slope comprising axis values for at least twoaxes against time; apply a moving mean filter across the data togenerate a first smoothed set of axis data corresponding to a first axisand a second smoothed set of axis data corresponding to a second axis;identify an intersection between the first smoothed set of axis data andthe second smoothed set of axis data; and determine, based on theidentified intersection, that the medical device has flipped.

In an Example 34, the media of Example 32, wherein the instructions areconfigured to cause the processor to determine that the medical devicehas flipped by causing the processor to: generate a slope of theacceleration data, the slope comprising axis values for at least oneaxis against time; apply a moving mean filter across the data togenerate a first smoothed set of axis data corresponding to a first axisof the at least one axis; identify a first sign change associated withthe first smoothed set of axis data; and determine, based on theidentified first sign change, that the medical device has flipped.

In an Example 35, the media of Example 32, wherein the instructions arefurther configured to cause the processor to apply, in response todetermining that the medical device has flipped, a correction to anoutput of a monitoring process.

While multiple embodiments are disclosed, still other embodiments of thepresent disclosure will become apparent to those skilled in the art fromthe following detailed description, which shows and describesillustrative embodiments of the disclosure. Accordingly, the drawingsand detailed description are to be regarded as illustrative in natureand not restrictive.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic illustration depicting an illustrative medicalsystem, in accordance with embodiments of the disclosure.

FIG. 2 is a block diagram depicting an illustrative computing device, inaccordance with embodiments of the disclosure.

FIG. 3 depicts an illustrative plot of acceleration data axis values, inaccordance with embodiments of the disclosure.

FIG. 4A is a flow diagram depicting an illustrative method of medicaldevice operation, in accordance with embodiments of the disclosure.

FIG. 4B is a flow diagram depicting an illustrative method ofdetermining that a medical device has flipped, in accordance withembodiments of the disclosure.

FIG. 4C is a flow diagram depicting another illustrative method ofdetermining that a medical device has flipped, in accordance withembodiments of the disclosure.

While the disclosed subject matter is amenable to various modificationsand alternative forms, specific embodiments have been shown by way ofexample in the drawings and are described in detail below. Theintention, however, is not to limit the disclosure to the particularembodiments described. On the contrary, the disclosure is intended tocover all modifications, equivalents, and alternatives falling withinthe scope of the disclosure as defined by the appended claims.

As used herein in association with values (e.g., terms of magnitude,measurement, and/or other degrees of qualitative and/or quantitativeobservations that are used herein with respect to characteristics (e.g.,dimensions, measurements, attributes, components, etc.) and/or rangesthereof, of tangible things (e.g., products, inventory, etc.) and/orintangible things (e.g., data, electronic representations of currency,accounts, information, portions of things (e.g., percentages,fractions), calculations, data models, dynamic system models,algorithms, parameters, etc.), “about” and “approximately” may be used,interchangeably, to refer to a value, configuration, orientation, and/orother characteristic that is equal to (or the same as) the stated value,configuration, orientation, and/or other characteristic or equal to (orthe same as) a value, configuration, orientation, and/or othercharacteristic that is reasonably close to the stated value,configuration, orientation, and/or other characteristic, but that maydiffer by a reasonably small amount such as will be understood, andreadily ascertained, by individuals having ordinary skill in therelevant arts to be attributable to measurement error; differences inmeasurement and/or manufacturing equipment calibration; human error inreading and/or setting measurements; adjustments made to optimizeperformance and/or structural parameters in view of other measurements(e.g., measurements associated with other things); particularimplementation scenarios; imprecise adjustment and/or manipulation ofthings, settings, and/or measurements by a person, a computing device,and/or a machine; system tolerances; control loops; machine-learning;foreseeable variations (e.g., statistically insignificant variations,chaotic variations, system and/or model instabilities, etc.);preferences; and/or the like.

Although the term “block” may be used herein to connote differentelements illustratively employed, the term should not be interpreted asimplying any requirement of, or particular order among or between,various blocks disclosed herein. Similarly, although illustrativemethods may be represented by one or more drawings (e.g., flow diagrams,communication flows, etc.), the drawings should not be interpreted asimplying any requirement of, or particular order among or between,various steps disclosed herein. However, certain embodiments may requirecertain steps and/or certain orders between certain steps, as may beexplicitly described herein and/or as may be understood from the natureof the steps themselves (e.g., the performance of some steps may dependon the outcome of a previous step). Additionally, a “set,” “subset,” or“group” of items (e.g., inputs, algorithms, data values, etc.) mayinclude one or more items, and, similarly, a subset or subgroup of itemsmay include one or more items. A “plurality” means more than one.

DETAILED DESCRIPTION

Embodiments of the disclosure include an implantable medical device(IMD) that includes a processor configured to determine a change inorientation of the IMD. That is, for example, in embodiments, theprocessor of the IMD may be configured to obtain acceleration data(e.g., posture data) and to process that data to determine whether theIMD has flipped. According to embodiments, an IMD has flipped when itsorientation with respect to at least one axis has changed byapproximately 180 degrees.

FIG. 1 shows an illustrative medical system 100, in accordance withembodiments of the disclosure. As shown in FIG. 1, the medical system100 includes an IMD 102 configured to be implanted within the body of asubject 104, and an external monitoring device (EMD) 106, which iscommunicatively coupled to the IMD 102 via a communication link 108. Inthe illustrated embodiments, the medical system 100 is operativelycoupled to the subject 104, and the IMD 102 and the EMD 106 areconfigured to communicate with one another over the communication link108. The subject 104 may be a human, a dog, a pig, and/or any otheranimal having physiological parameters that can be recorded. Forexample, in embodiments, the subject 104 may be a human patient.

In embodiments, the communication link 108 may be, or include, awireless communication link such as, for example, a short-range radiolink, such as Bluetooth, IEEE 802.11, a proprietary wireless protocol,and/or the like. In embodiments, for example, the communication link 108may utilize Bluetooth Low Energy radio (Bluetooth 4.1), or a similarprotocol, and may utilize an operating frequency in the range of 2.40 to2.48 GHz. The term “communication link” may refer to an ability tocommunicate some type of information in at least one direction betweenat least two devices, and should not be understood to be limited to adirect, persistent, or otherwise limited communication channel. That is,according to embodiments, the communication link 108 may be a persistentcommunication link, an intermittent communication link, an ad-hoccommunication link, and/or the like. The communication link 108 mayrefer to direct communications between the IMD 102 and the EMD 106,and/or indirect communications that travel between the IMD 102 and theEMD 106 via at least one other device (e.g., a repeater, router, hub,and/or the like). The communication link 108 may facilitateuni-directional and/or bi-directional communication between the IMD 102and the EMD 106. Data and/or control signals may be transmitted betweenthe IMD 102 and the EMD 106 to coordinate the functions of the IMD 102and/or the EMD 106. In embodiments, patient data may be downloaded fromone or more of the IMD 102 and the EMD 106 periodically or on command.The physician and/or the patient may communicate with the IMD 102 andthe EMD 106, for example, to acquire patient data or to initiate,terminate and/or modify recording and/or therapy.

In embodiments, the IMD 102 and/or the EMD 106 may provide one or moreof the following functions with respect to a patient: sensing, dataanalysis, and therapy. For example, in embodiments, the IMD 102 and/orthe EMD 106 may be used to measure any number of a variety ofphysiological, device, subjective, and/or environmental parametersassociated with the subject 104, using electrical, mechanical, and/orchemical means. The IMD 102 and/or the EMD 106 may be configured toautomatically gather data, gather data upon request (e.g., inputprovided by the subject, a clinician, another device, and/or the like),and/or any number of various combinations and/or modifications thereof.The IMD 102 and/or EMD 106 may be configured to store data related tothe physiological, device, environmental, and/or subjective parametersand/or transmit the data to any number of other devices in the system100. In embodiments, the IMD 102 and/or the EMD 106 may be configured toanalyze data and/or act upon the analyzed data. For example, the IMD 102and/or EMD 106 may be configured to modify therapy, perform additionalmonitoring, and/or provide alarm indications based on the analysis ofthe data.

In embodiments, the IMD 102 and/or the EMD 106 may be configured toprovide therapy. Therapy may be provided automatically and/or uponrequest (e.g., an input by the subject 104, a clinician, another deviceor process, and/or the like). The IMD 102 and/or the EMD 106 may beprogrammable in that various characteristics of their sensing, therapy(e.g., duration and interval), and/or communication may be altered bycommunication between the devices 102 and 106 and/or other components ofthe system 100.

According to embodiments, the IMD 102 may include any type of IMD, anynumber of different components of an implantable system, and/or thelike. For example, the IMD 102 may include a control device, amonitoring device, a pacemaker, an implantable cardioverterdefibrillator (ICD), a cardiac resynchronization therapy (CRT) deviceand/or the like, and may be an implantable medical device known in theart or later developed, for providing therapy and/or diagnostic dataabout the subject 104 and/or the IMD 102. In various embodiments, theIMD 102 may include both defibrillation and pacing/CRT capabilities(e.g., a CRT-D device).

In embodiments, the IMD 102 may be implanted subcutaneously within animplantation location or pocket in the patient's chest or abdomen andmay be configured to monitor (e.g., sense and/or record) physiologicalparameters associated with the patient's heart. In embodiments, the IMD102 may be an implantable cardiac monitor (ICM) (e.g., an implantablediagnostic monitor (IDM), an implantable loop recorder (ILR), etc.)configured to record physiological parameters such as, for example, oneor more cardiac electrical signals, heart sounds, heart rate, bloodpressure measurements, oxygen saturations, and/or the like.

In embodiments, the IMD 102 may be configured to detect a variety ofphysiological signals that may be used in connection with variousdiagnostic, therapeutic and/or monitoring implementations. For example,the IMD 102 may include sensors or circuitry for detecting respiratorysystem signals, cardiac system signals, heart sounds. and/or signalsrelated to patient activity. In embodiments, the IMD 102 may beconfigured to sense intrathoracic impedance, from which variousrespiratory parameters may be derived, including, for example,respiratory tidal volume and minute ventilation.

In embodiments, sensors and associated circuitry may be incorporated inthe IMD 102 for detecting one or more body movement or body postureand/or position related signals. For example, accelerometers and/or GPSdevices may be employed to detect patient activity, patient location,body orientation, and/or torso position. According to embodiments, forexample, the MD 102 may include an acceleration sensor 110 configured togenerate an acceleration signal and/or acceleration data, which mayinclude the acceleration signal, information derived from theacceleration signal, and/or the like. In embodiments, the accelerationdata includes acceleration measurements associated with movement of theMD 102. In embodiments, the acceleration sensor may be, or include, anyacceleration sensor able to generate measurements associated with itsmotion. An “acceleration sensor,” as used herein, may be, or include,any type of accelerometer, gyroscope, magnetometer, inertial measurementunit (IMU), and/or any other type of sensor or combination of sensorsconfigured to measure changes in acceleration, angular velocity, and/orthe like. According to embodiments, acceleration data may be used todetermine that the IMD 102 has flipped.

Derived parameters may also be monitored using the IMD 102. For example,a sleep sensor may rely on measurements taken by an implantedaccelerometer that measures body activity levels. The sleep sensor mayestimate sleeping patterns based on the measured activity levels. Otherderived parameters include, but are not limited to, a functionalcapacity indicator, autonomic tone indicator, sleep quality indicator,cough indicator, anxiety indicator, and a cardiovascular wellnessindicator for calculating a quality of life indicator quantifying asubject's overall health and well-being.

In various embodiments, the EMD 106 may be a device that is configuredto be portable with the subject 104, e.g., by being integrated into avest, belt, harness, sticker; placed into a pocket, a purse, or abackpack; carried in the subject's hand; and/or the like, or otherwiseoperatively (and/or physically) coupled to the subject 104. The EMD 106may be configured to monitor (e.g., sense and/or record) physiologicalparameters associated with the subject 104 and/or provide therapy to thesubject 104. For example, the EMD 106 may be, or include, a wearablecardiac defibrillator (WCD) such as a vest that includes one or moredefibrillation electrodes. In embodiments, the EMD 106 may include anynumber of different therapy components such as, for example, adefibrillation component, a drug delivery component, a neurostimulationcomponent, a neuromodulation component, a temperature regulationcomponent, and/or the like. In embodiments, the EMD 106 may includelimited functionality, e.g., defibrillation shock delivery andcommunication capabilities, with arrhythmia detection, classificationand/or therapy command/control being performed by a separate device suchas, for example, the IMD 102.

In embodiments, the EMD 106 may include sensing components such as, forexample, one or more surface electrodes configured to obtain anelectrocardiogram (ECG), one or more accelerometers configured to detectmotion associated with the patient 104, one or more respiratory sensorsconfigured to obtain respiration information, one or more environmentalsensors configured to obtain information about the external environment(e.g., temperature, air quality, humidity, carbon monoxide level, oxygenlevel, barometric pressure, light intensity, sound, and/or the like)surrounding the patient 104, and/or the like. In embodiments, the EMD106 may be configured to measure parameters relating to the human body,such as temperature (e.g., a thermometer), blood pressure (e.g., asphygmomanometer), blood characteristics (e.g., glucose levels), bodyweight, physical strength, mental acuity, diet, heart characteristics,relative geographic position (e.g., a Global Positioning System (GPS)),and/or the like.

According to embodiments, the EMD 106 may be configured to measuresubjective and/or perceptive data from the subject 104. Subjective datais information related to a patient's feelings, perceptions, and/oropinions, as opposed, for example, to objective physiological data. Forexample, EMD 106 may be configured to measure subject responses toinquiries such as “How do you feel?” and “How is your pain?” The EMD 106may be configured to prompt the subject 104 and record subjective datafrom the subject 104 using visual and/or audible cues. In embodiments,the subject 104 can press coded response buttons or type an appropriateresponse on a keypad. In embodiments, subjective data may be collectedby allowing the subject 104 to speak into a microphone and using speechrecognition software to process the subjective data.

The illustrative cardiac monitoring system 100 shown in FIG. 1 is notintended to suggest any limitation as to the scope of use orfunctionality of embodiments of the present disclosure. The illustrativecardiac monitoring system 100 should not be interpreted as having anydependency or requirement related to any single component or combinationof components illustrated therein. Additionally, various componentsdepicted in FIG. 1 may be, in embodiments, integrated with various onesof the other components depicted therein (and/or components notillustrated), all of which are considered to be within the ambit of thesubject matter disclosed herein.

Various components depicted in FIG. 1 may operate together to form themonitoring system 100, which may be, for example, a computerized patientmanagement and monitoring system. In embodiments, the system 100 may bedesigned to assist in monitoring the subject's condition, managing thesubject's therapy, and/or the like. An illustrative patient managementand monitoring system is the LATITUDE® patient management system fromBoston Scientific Corporation, Natick Mass. Illustrative aspects of apatient management and monitoring system are described in ADVANCEDPATIENT MANAGEMENT SYSTEM INCLUDING INTERROGATOR/TRANSCEIVER UNIT, U.S.Pat. No. 6,978,182 to Mazar et al., the entirety of which is herebyincorporated by reference herein.

Any number of components of the system 100 may be implemented using oneor more computing devices. That is, for example, IMD 102 and/or EMD 106may be implemented on one or more computing devices. FIG. 2 is a blockdiagram depicting an illustrative computing device 200, in accordancewith embodiments of the disclosure. The computing device 200 may includeany type of computing device suitable for implementing aspects ofembodiments of the disclosed subject matter. Examples of computingdevices include specialized computing devices or general-purposecomputing devices such “workstations,” “servers,” “laptops,” “desktops,”“tablet computers,” “hand-held devices,” “smartphones,” “general-purposegraphics processing units (GPGPUs),” and the like, all of which arecontemplated within the scope of FIGS. 1 and 2, with reference tovarious components of the system 100 and/or computing device 200.

In embodiments, the computing device 200 includes a bus 210 that,directly and/or indirectly, couples the following devices: a processor220, a memory 230, an input/output (I/O) port 240, an I/O component 250,an acceleration sensor 260 (e.g., the acceleration sensor 110 depictedin FIG. 1), and a power supply 270. Any number of additional components,different components, and/or combinations of components may also beincluded in the computing device 200. The I/O component 250 may includea presentation component configured to present information to a usersuch as, for example, a display device, a speaker, a printing device,and/or the like, and/or an input component such as, for example, amicrophone, a joystick, a satellite dish, a scanner, a printer, awireless device, a keyboard, a pen, a voice input device, a touch inputdevice, a touch-screen device, an interactive display device, a mouse,and/or the like. The acceleration sensor 260 may be any type of sensorcapable of measuring acceleration such as, for example, anaccelerometer, an inertial measurement unit (IMU), a magnetometer,and/or the like.

The bus 210 represents what may be one or more busses (such as, forexample, an address bus, data bus, or combination thereof). Similarly,in embodiments, the computing device 200 may include a number ofprocessors 220, a number of memory components 230, a number of I/O ports240, a number of I/O components 250, a number of acceleration sensors260, and/or a number of power supplies 270. Additionally, any number ofthese components, or combinations thereof, may be distributed and/orduplicated across a number of computing devices.

In embodiments, the memory 230 includes computer-readable media in theform of volatile and/or nonvolatile memory and may be removable,nonremovable, or a combination thereof. Media examples include RandomAccess Memory (RAM); Read Only Memory (ROM); Electronically ErasableProgrammable Read Only Memory (EEPROM); flash memory; optical orholographic media; magnetic cassettes, magnetic tape, magnetic diskstorage or other magnetic storage devices; data transmissions; and/orany other medium that can be used to store information and can beaccessed by a computing device such as, for example, quantum statememory, and/or the like. In embodiments, the memory 230 storescomputer-executable instructions 280 for causing the processor 220 toimplement aspects of embodiments of system components discussed hereinand/or to perform aspects of embodiments of methods and proceduresdiscussed herein.

The computer-executable instructions 280 may include, for example,computer code, machine-useable instructions, and the like such as, forexample, program components capable of being executed by one or moreprocessors 220 associated with the computing device 200. Programcomponents may be programmed using any number of different programmingenvironments, including various languages, development kits, frameworks,and/or the like. Some or all of the functionality contemplated hereinmay also, or alternatively, be implemented in hardware and/or firmware.

According to embodiments, for example, the instructions 280 may beconfigured to be executed by the processor 220 and, upon execution, tocause the processor to obtain acceleration data from the accelerationsensor 260 and to determine, based on the acceleration data, whether theIMD has flipped. According to embodiments, the instructions 280 may beconfigured to cause the processor 220 to determine that the medicaldevice has flipped by causing the processor to generate a slope of theacceleration data. An example of an illustrative plot 300 includinggenerated slopes, in accordance with embodiments of the subject matterdisclosed herein, is depicted in FIG. 3.

As shown, the plot 300 includes axis values for at least one axisplotted against time. In the example illustrated, the plot 300 includesa vertical chart axis 302 corresponding to acceleration sensor axisvalues and a horizontal chart axis 304 corresponding to time (in days).A first set 306 of axis values corresponding to an X axis is plottedagainst time, a second set 308 of axis values corresponding to a Y axisis plotted against time, and a third set 310 of axis valuescorresponding to a Z axis is plotted against time.

According to embodiments, the illustrated sets of axis values 306, 308,and 310 may be smoothed sets of axis data. That is, for example, inembodiments, the instructions 280 may be configured to cause theprocessor 220 to apply a moving mean filter across the data to generateat least a first smoothed set of axis data corresponding to a firstaxis, a second smoothed set of axis data corresponding to a second axis,and/or a third smoothed set of axis data corresponding to a third axis.As shown, the processor 220 may be configured to identify anintersection, at the point in time marked by the circle 312 in FIG. 3,of the first smoothed set 306 of axis values and the second smoothed set308 of axis values. The processor 220 may determine, based on theidentified intersection, that the medical device has flipped.

Additionally, or alternatively, the processor 220 may identify a flipabout a particular axis (e.g., the x-axis, y-axis, or z-axis) using oneor more trigonometric functions. For example, to identify a flip aboutan x-axis, the processor 200 may compute an angle using the y-axis valueand z-axis value illustrated in FIG. 3 using, for example, a 4-quadrantarctangent function, i.e., θ=a tan 2d(y,z). If the IMD 102 does notflip, then this angle should be relatively constant. If, however, theIMD 102 flips, then this angle should change by about 180°. Inembodiments, the processor 220 may identify a flip if the angle changesby more than a threshold amount (e.g., greater than 90°, 110°, 130°,150°, 170°, and/or the like). Similarly, the processor 220 may identifya flip about the y-axis when the angle of θ=a tan 2d(x,z) changes bymore than a threshold amount (e.g., greater than 90°, 110°, 130°, 150°,170°, and/or the like). And, the processor 220 may identify a flip aboutthe z-axis when the angle of θ=a tan 2d(x,y) changes by more than athreshold amount (e.g., greater than 90°, 110°, 130°, 150°, 170°, and/orthe like). In at least some embodiments, other trigonometric functionsthat are used to calculate angles between the x-axis value and they-axis value, between the x-axis value and the z-axis value, and they-axis value and the z-axis value.

As another example of using a trigonometric function to identify a flip,the processor 220 may compute the angle between any two vectors in athree-dimensional space. For example, the processor 220 may compute theangle between the smoothed vector v₁=(x₁, y₁, z₁) at a first time pointand the smoothed vector v₂=(x₂, y₂, z₂) at a second time point using,for example, θ=cos⁻¹(v₁·v₂)/(|v₁νv₂|). Here, x_(i), y_(i), z_(i) are theaxis values at time points and v₁·v₂ is the dot product of v₁ and v₂,i.e. v₁·v₂=x₁x₂+y₁y₂+z₁z₂, and |v_(i)|=sqrt(x_(i) ²+y_(i) ²+z_(i) ²). Inembodiments, the first time point may occur prior to the second timepoint so the processor 220 can identify how the vector changes overtime. For example, if no flip occurs, the angle between the vectors atthe two time points will be approximately zero. If, however, a flipoccurs, the angle between the vectors at the two time points will beapproximately 180°. In embodiments, the processor 220 may identify aflip if the angle is more than a threshold amount (e.g., greater than90°, 110°, 130°, 150°, 170°, and/or the like).

In at least some embodiments, however, the processor 220 may not computecos⁻¹ of (v₁·v₂)/(|v₁∥v₂|) and instead, the processor 220 may identify aflip based on (v₁·v₂)/(|v₁νv₂|). For example, if cos⁻¹(v₁·v₂)/(|v₁∥v₂∥)is approximately zero, then (v₁·v₂)/(|v₁∥v₂|) will be approximately +1.Conversely, if cos⁻¹(v₁·v₂)/(|v₁∥v₂|) is approximately 180°, then(v₁·v₂)/(|v₁∥v₂|) will be approximately −1. As such, instead ofcomputing cos⁻¹(v₁·v₂)/(|v₁∥v₂|), the processor 220 may compute(v₁·v₂)/(|v₁∥v₂|) and determine when (v₁·v₂)/(|v₁νv₂|) exceeds aspecific threshold (e.g., 0 is equivalent to 90°, −0.707 is equivalentto 135°, etc.) to identify a flip of the IMD 102. In at least some otherembodiments, when the patient is at rest, the processor may compute(v₁·v₂) instead of computing (v₁·v₂)/(|v₁∥v₂|) to determine a flipbecause (|v₁∥v₂|) would be approximately 1(G).

Alternatively, or additionally, the processor 220 may identify a firstsign change associated with the first smoothed set 306 of axis data, asecond sign change associated with the second smoothed set 308 of axisdata, and/or a third sign change associated with the third smoothed set310. That is, the processor 220 identifies a point in time 314 at whichthe axis values of the first set, the second set, and/or the third setbecomes negative. In embodiments, the instructions 280 may be configuredto cause the processor to determine, based on the identified first signchange, the second sign change, and/or the third sign change, that themedical device has flipped. According to embodiments, in response todetermining that the IMD 102 has flipped, the processor 220 may befurther configured to generate a notification to clinicians and/or tothe patient that the IMD 102 may have moved within the pocket andsuggest that the clinicians and/or the patient perform a bodycalibration procedure to account for the new orientation.

According to embodiments, in response to determining that the medicaldevice has flipped, the instructions 280 may be further configured tocause the processor 220 to apply correction to an output of a monitoringprocess. In embodiments, for example, the monitoring process may includea posture algorithm, a heart sounds algorithm, a medical deviceimpedance sensing process, and/or the like. According to embodiments,the instructions 280 may be configured to cause the processor 220 toapply the correction to the output of the monitoring process byrecalibrating the monitoring process to account for a flippedorientation of the medical device. In embodiments, the processor 220 maybe configured to send a notification to a clinician and/or the patientabout the flip and may include one or more recommendations forresponding to the flip.

The illustrative computing device 200 shown in FIG. 2 and plot 300 shownin FIG. 3 are not intended to suggest any limitation as to the scope ofuse or functionality of embodiments of the present disclosure. Theillustrative computing device 200 and plot 300 also should not beinterpreted as having any dependency or requirement related to anysingle component or combination of components illustrated therein.Additionally, various components depicted in FIG. 2 may be, inembodiments, integrated with various ones of the other componentsdepicted therein (and/or components not illustrated), all of which areconsidered to be within the ambit of the present disclosure.

FIG. 4A is a flow diagram depicting an illustrative method 400 ofmedical device operation (e.g., physiological monitoring), in accordancewith embodiments of the subject matter disclosed herein. According toembodiments, the method 400 may be performed by any number of differentaspects of components of the system 100 depicted in FIG. 1, and/or thecomputing device 200 depicted in FIG. 2. For example, in embodiments,the illustrative method 400 may be performed by a mobile device havingan acceleration sensor (e.g., an accelerometer and/or a magnetometer), aprocessor, and a memory, as described herein.

Embodiments of the method 400 include obtaining acceleration data froman acceleration sensor (block 402) and determining, based on theacceleration data, that the medical device has flipped (block 404).According to embodiments, the acceleration data may include, forexample, posture data captured by an acceleration sensor such as anaccelerometer, inertial measurement unit (IMU), magnetometer, and/or thelike. In embodiments, analyzing the acceleration data over time mayreveal device orientation changes. That is, for example, in embodiments,obtaining the acceleration data may include sampling an output of anacceleration sensor at a specified time interval. For example, theacceleration data may include sampling an output of an accelerationsensor many times a second, once every second, once every minute, twominutes, three minutes, four minutes, five minutes, six minutes, sevenminutes, eight minutes, nine minutes, ten minutes, eleven minutes, etc.

As shown in FIG. 4A, the method 400 may further include applying acorrection to an output of a monitoring process (block 406). Accordingto embodiments, the orientation of a sensor in a medical device (andthus, the orientation of the medical device itself) may be an assumptionor input to any number of decision processes, monitoring process,therapy processes, and/or the like. For example, a posture determiningalgorithm may depend upon a fixed orientation. That is for example, asleep incline algorithm may be disrupted if the medical device flips.Similarly, a heart sounds algorithm may depend upon a fixed deviceorientation. In embodiments, for example, a heart sounds algorithm maybe configured to detect the waveform of S2 and use its peak as afiducial marker. Flipping the medical device would invert the waveformand the heart sounds algorithm may select a less accurate range of datafor S3 measurements, which will reduce heart logic accuracy. A deviceimpedance sensing process also may depend upon a fixed deviceorientation. That is, for example, if the medical device is flipped, theimpedance vector will change, thereby causing the amplitude of thesignal to jump, which may result in impaired impedance sensing.

Accordingly, in embodiments, any number of different monitoringprocesses may be corrected to account for the fact that the deviceorientation has changed from its assumed (or previously determined)orientation. Applying a correction to an output of a monitoring processmay be achieved by modifying an output directly and/or by recalibratingthe monitoring process to account for the different (e.g., flipped)orientation of the medical device. In embodiments, the monitoringprocess may include, for example, a posture algorithm (e.g., analgorithm configured to monitor a sleep incline), a heart soundsalgorithm, and/or a medical device impedance sensing process.

FIG. 4B is a flow diagram depicting an illustrative method 408 ofdetermining that a medical device has flipped, in accordance withembodiments of the subject matter disclosed herein. According toembodiments, the method 400 may be performed by any number of differentaspects of components of the system 100 depicted in FIG. 1, and/or thecomputing device 200 depicted in FIG. 2. For example, in embodiments,the illustrative method 400 may be performed by a mobile device havingan acceleration sensor (e.g., an accelerometer and/or a magnetometer), aprocessor, and a memory, as described herein.

As shown in FIG. 4B, the method 408 may include generating a slope ofthe acceleration data (block 410), the plot comprising axis values forat least two axes plotted against time; applying a moving mean filteracross the data to generate a first smoothed set of axis datacorresponding to a first axis and a second smoothed set of axis datacorresponding to a second axis (block 412); identifying an intersectionof the first smoothed set of axis data and the second smoothed set ofaxis data (block 414); and determining, based on the identifiedintersection, that the medical device has flipped (block 416).

FIG. 4C is another flow diagram depicting another illustrative method418 of determining that a medical device has flipped, in accordance withembodiments of the subject matter disclosed herein. The method 418 maybe utilized in lieu of, or in addition to, the method 408 depicted inFIG. 4B. According to embodiments, the method 418 may be performed byany number of different aspects of components of the system 100 depictedin FIG. 1, and/or the computing device 200 depicted in FIG. 2. Forexample, in embodiments, the illustrative method 400 may be performed bya mobile device having an acceleration sensor (e.g., an accelerometerand/or a magnetometer), a processor, and a memory, as described herein.

As shown in FIG. 4C, the method 418 may include generating a slope ofthe acceleration data, the slope comprising axis values for at least oneaxis against time (block 420); applying a moving mean filter across thedata to generate a first smoothed set of axis data corresponding to afirst axis, a second smoothed set of axis data corresponding to a secondaxis, and/or a third smoothed set of axis data corresponding to a thirdaxis (block 422); identifying a first sign change associated with thefirst smoothed set of axis data, identifying a second sign changeassociated with the second smoothed set of axis data, and/or identifyinga third sign change associated with third smoothed set of axis data(block 424); and determining, based on the identified first sign change,the second sign change, and/or the third sign change, that the medicaldevice has flipped (block 426). In embodiments, block 424 mayadditionally, or alternatively include using a trigonometric function onthe axes data, as described above in relation to FIG. 3.

Various modifications and additions can be made to the exemplaryembodiments discussed without departing from the scope of the disclosedsubject matter. For example, while the embodiments described above referto particular features, the scope of this disclosure also includesembodiments having different combinations of features and embodimentsthat do not include all of the described features. That is, for example,embodiments may include one or more filters and/or other components thatfacilitate interpreting sensed physiological signals in the presence ofsome interference caused by having an energy supply current sharing aportion of the physical sense pathway. Accordingly, the scope of thedisclosed subject matter is intended to embrace all such alternatives,modifications, and variations as fall within the scope of the claims,together with all equivalents thereof.

We claim:
 1. A medical device having a processor, comprising: anacceleration sensor configured to generate acceleration data, theacceleration data comprising a plurality of acceleration measurements;and a memory having embodied thereon computer-executable instructionsthat are configured to, when executed by the processor, cause theprocessor to: obtain the acceleration data from the acceleration sensor;and determine, based on the acceleration data, that the medical devicehas flipped.
 2. The medical device of claim 1, wherein the instructionsare configured to cause the processor to determine that the medicaldevice has flipped by causing the processor to: generate a slope of theacceleration data, the slope comprising axis values for at least twoaxes against time; apply a moving mean filter across the data togenerate a first smoothed set of axis data corresponding to a first axisand a second smoothed set of axis data corresponding to a second axis;identify an intersection between the first smoothed set of axis data andthe second smoothed set of axis data; and determine, based on theidentified intersection, that the medical device has flipped.
 3. Themedical device of claim 1, wherein the instructions are configured tocause the processor to determine that the medical device has flipped bycausing the processor to: generate a slope of the acceleration data, theslope comprising axis values for at least one axis against time; apply amoving mean filter across the data to generate a first smoothed set ofaxis data corresponding to a first axis of the at least one axis;identify a first sign change associated with the first smoothed set ofaxis data; and determine, based on the identified first sign change,that the medical device has flipped.
 4. The medical device of claim 3,wherein the instructions are further configured to cause the processorto apply a moving mean filter across the data to generate a secondsmoothed set of axis data corresponding to a second axis; identify asecond sign change associated with the second smoothed set of axis data;and determine, based on the identified first and second sign changes,that the medical device has flipped.
 5. The medical device of claim 1,wherein the instructions are further configured to cause the processorto apply, in response to determining that the medical device hasflipped, a correction to an output of a monitoring process.
 6. Themedical device of claim 5, wherein the monitoring process comprises atleast one of a posture algorithm, a heart sounds algorithm, and an ICMimpedance sensing process.
 7. The medical device of claim 5, wherein theinstructions are configured to cause the processor to apply thecorrection to the output of the monitoring process by recalibrating themonitoring process to account for a flipped orientation of the medicaldevice.
 8. The medical device of any of claim 5, wherein theinstructions are further configured to cause the processor to generate,in response to determining that the medical device has flipped, anotification.
 9. The medical device of claim 8, wherein the notificationcomprises one or more recommendations for responding to the flippedmedical device.
 10. The medical device of claim 1, wherein theinstructions are configured to cause the processor to determine that themedical device has flipped by causing the processor to: apply atrigonometric function to the acceleration data and identify a flipbased on a resultant of the trigonometric function being applied to theacceleration data.
 11. A processor-implemented method, performed by aprocessor of a medical device, the method comprising: obtainingacceleration data from an acceleration sensor; and determining, based onthe acceleration data, that the medical device has flipped.
 12. Themethod of claim 11, wherein determining that the medical device hasflipped comprises: generating a slope of the acceleration data, theslope comprising axis values for at least two axes against time;applying a moving mean filter across the data to generate a firstsmoothed set of axis data corresponding to a first axis and a secondsmoothed set of axis data corresponding to a second axis; identifying anintersection between the first smoothed set of axis data and the secondsmoothed set of axis data; and determining, based on the identifiedintersection, that the medical device has flipped.
 13. The method ofclaim 11, wherein determining that the medical device has flippedcomprises: generating a slope of the acceleration data, the slopecomprising axis values for at least one axis against time; applying amoving mean filter across the data to generate a first smoothed set ofaxis data corresponding to a first axis of the at least one axis;identifying a first sign change associated with the first smoothed setof axis data; and determining, based on the identified first change,that the medical device has flipped.
 14. The method of claim 13, furthercomprising: applying the moving mean filter across the data to generatea second smoothed set of axis data corresponding to a second axis;identifying a second sign change associated with the second smoothed setof axis data; and determining, based on the identified first and secondsign changes, that the medical device has flipped.
 15. The method ofclaim 11, further comprising applying, in response to determining thatthe medical device has flipped, a correction to an output of amonitoring process.
 16. The method of claim 15, wherein the monitoringprocess comprises at least one of a posture algorithm, a heart soundsalgorithm, and an ICM impedance sensing process.
 17. One or morecomputer-readable media having computer-executable instructions embodiedthereon, the instructions configured to be executed by a processor of amedical device, wherein the instructions are configured to cause theprocessor to: obtain acceleration data from an acceleration sensor; anddetermine, based on the acceleration data, that the medical device hasflipped.
 18. The media of claim 17, wherein the instructions areconfigured to cause the processor to determine that the medical devicehas flipped by causing the processor to: generate a slope of theacceleration data, the slope comprising axis values for at least twoaxes against time; apply a moving mean filter across the data togenerate a first smoothed set of axis data corresponding to a first axisand a second smoothed set of axis data corresponding to a second axis;identify an intersection between the first smoothed set of axis data andthe second smoothed set of axis data; and determine, based on theidentified intersection, that the medical device has flipped.
 19. Themedia of claim 17, wherein the instructions are configured to cause theprocessor to determine that the medical device has flipped by causingthe processor to: generate a slope of the acceleration data, the slopecomprising axis values for at least one axis against time; apply amoving mean filter across the data to generate a first smoothed set ofaxis data corresponding to a first axis of the at least one axis;identify a first sign change associated with the first smoothed set ofaxis data; and determine, based on the identified first sign change,that the medical device has flipped.
 20. The media of claim 17, whereinthe instructions are further configured to cause the processor to apply,in response to determining that the medical device has flipped, acorrection to an output of a monitoring process.